package br.edu.fucapi.posgraduacao.poo2.sgr.model;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

/**
 * @class Perfil.java
 * @author Fabio Oliveira
 * @date 11/01/2013
 * @brief Classe utilizada para persistência dos Perfis.
 */

@Entity
@Table(name = "PERFIL")
@SequenceGenerator(allocationSize = 1, name = "SEQ_PERFIL", sequenceName = "SEQ_PERFIL")
public class Perfil {
	
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO, generator = "SEQ_PERFIL")
	@Column(name = "id_perfil")
	private Integer idPerfil;
	
	@Column(name="nm_perfil", length = 100, nullable = true, unique=true, insertable = true, updatable = true)	
	private String nmPerfil;
	
	@Column(name="desc_perfil",length = 150, nullable = true, unique=false, insertable = true, updatable = true)
	private String descPerfil;	
	
	@OneToMany(mappedBy="perfil")
	private List<Usuario> listaUsuarios = new ArrayList<Usuario>();
	
	public Integer getIdPerfil() {
		return idPerfil;
	}
	public void setIdPerfil(final Integer idPerfil) {
		this.idPerfil = idPerfil;
	}
	public String getNmPerfil() {
		return nmPerfil;
	}
	public void setNmPerfil(final String nmPerfil) {
		this.nmPerfil = nmPerfil;
	}
	public String getDescPerfil() {
		return descPerfil;
	}
	public void setDescPerfil(final String descPerfil) {
		this.descPerfil = descPerfil;
	}
	public List<Usuario> getUsuario() {
		return listaUsuarios;
	}
	public void setUsuario(final List<Usuario> listaUsuarios) {
		this.listaUsuarios = listaUsuarios;
	}	
}
